草庐IT

JSON 对象

全部标签

javascript - 从对象中删除默认值

我有两个javascript对象:vara={x:1,y:{faz:'hello',baz:''},z:[1,2]};vardefaults={x:2,y:{faz:'',baz:''},z:[1,2]};我只想保留a中与默认值不同的字段:a=remove_defaults(a,defaults);//目标是从用作状态的对象中删除默认值(通过URL)。状态可以有嵌套字段,所以浅比较是不够的。叶值都是原始值(数字、字符串、bool值)。(这有点像underscore.js的_.defaults()方法的反面)实现此目标的最佳方法是什么?如果有帮助,该解决方案可以使用underscore.

javascript - 为什么控制台不使用输入对象的 `toString` 方法?

如果我打开控制台并输入...varf=function(a){this.toString=function(){return"-->"+a;}},i=newf(5);i;...它返回({toString:(function(){return"-->"+a;})})。但是如果我输入...varf=function(a){this.toString=function(){return"-->"+a;}},i=newf(5);alert(i);...它提醒"-->5"这对我来说并不重要,但我更希望第一个代码返回"-->5"。有没有办法做到这一点,或者控制台是否有意不使用toString?

javascript - 基础 JavaScript 面向对象

好吧,我应该知道这个问题的答案,但出于某种原因,我从未真正理解或需要真正了解JavaScript。Myquestionis:LookingatthecodesamplesbelowamIcorrectinmyunderstandingoramImissingsomeinformation.示例1需要实例化函数(或类)才能使用IsOld方法,并且将为每个实例创建一个单独的IsOld函数副本。functionMyClass1(){this.IsOld=function(age){if(age>40){returntrue;}returnfalse;};}//sampleusagevarm1

javascript - 如何使SVG图像图案填充随对象移动?

我有一些使用fill="url(#background)的平铺图像背景的SVG对象,我将#background定义为模式仅包含一个image。但是,当对象通过设置其x/y属性(或cx/cy,或任何其他定义偏移量的内容),背景不会随之移动。如何让背景也移动?来自HowwouldImoveanSVGpatternwithanelement我尝试设置patternContentUnits='objectBoundingBox'但这只会将图像变成纯色Blob(不过奇怪的是,根据图像着色,就好像它只是第一个像素或类似的像素).这是一个说明所有这些的jsfiddle-顶部的rect已变成纯色,然后

javascript - Jquery 或 Javascript 检查 Json 对象集合中是否存在对象

给定一个像这样的json字符串:[{"id":28,"Title":"Sweden"},{"id":56,"Title":"USA"},{"id":89,"Title":"England"}]我需要检查一个对象是否存在,检查所有字段,意思是:{"id":28,"Title":"Sweden"}=>exists{"id":29,"Title":"Sweden"}=>doesn'texist或{"id":28,"Title":"Sweden"}=>exists{"id":28,"Title":"Sweden2"}=>doesn'texist该集合可能有任意数量的对象,对象将始终具有相同数量

javascript - 如何在移动元素后更新包含元素列表的 jQuery 对象

有一个元素列表,比方说一些图片:我选择它们并将结果存储在一个变量中:varelements=$('img');现在我想把最后一张图片放到第一个位置。它像这样工作得很好:elements.first().before(elements.last());在那之后,对象elements自然仍然按照它们之前的顺序保存值。我可以在轮类后再次查询来更新它:elements=$('img');但是当我已经将所有元素放在一起时运行另一个查询似乎效率低下。此外,由于它不是数组,因此无法正常工作:elements.unshift(elements.pop());在这种情况下更新对象列表的最佳方法是什么?

javascript - 有没有一种方法可以防止在 jQuery 对象化 HTML 片段中加载图像

我有一个HTML片段,我正在通过jQuery对其进行对象化,以便从中提取一些数据。这个片段有一些我不希望浏览器下载的图像资源。有办法吗?我当前代码的简化版本:varhtml='BlahBlah.........';varobj=$(html);//thismakesthebrowserdownloadthecontainedimagesaswell!!!varmyData={item_1:obj.find('.data:first').text(),item_2:obj.find('.data2:first').text(),....//andsoon..};

javascript - 使用 lodash 或下划线通过路径设置 JSON 中的值

我想使用这样的路径字符串在JSON中设置值,如下所示:{a:[{b:'c'}]}我想到了这个解决方案,但我想知道是否有更简单的方法来编写:functionsetValue(path,value,json){varkeys=path.split('.');_.reduce(keys,function(obj,key,i){if(i===keys.length-1){obj[key]=value;}else{returnobj[key];}},json);}所以调用setValue('a.0.b','d',{a:[{b:'c'}]})会将json更改为{a:[{b:'d'}]​​}

javascript - 遍历窗口对象中的所有项目

昨晚实在无聊,想了个小剧本。基本上我在想PHP与JavaScript相比有多少内置函数,然后我意识到我真的不知道JavaScript实际上有多少函数。我想写一个脚本来查看窗口对象,包括对象内部的每个对象等等。我编写了脚本并且成功了(在较小的对象上进行了尝试)。但是,我的问题是JavaScript不允许我遍历整个Windows对象。我试过:for(varkeyinwindow){console.log(key);}我也试过:vara=Object.create(window);for(varkeyina){console.log(key);}这两段代码都给我:topwindowlocat

javascript - JavaScript 类和 jQuery 对象之间的循环依赖

我正在尝试使用现有的工作代码库并使用JavaScript使其面向对象。我的系统采用一对多关系中包含groups和items的JSON,并将其可视化在页面上。这些项目可以移动到不同的组中,并且还需要计算它们在这些组中的位置。因此,需要建立事件,以了解周围的团体和门票。我正在使用JohnResig's简单的JavaScript继承设置来建立两个类,Item和Group。当每个Item被实例化时,它会返回到它的父级Group。我的问题是在我想建立我的事件时出现的,最容易用以下函数解释:varGroup=Class.extend({...//Calculatewheretoplacethene